const fs = require('fs');
const path = require('path');

// 获取.next目录的绝对路径
const nextDir = path.join(__dirname, '..', '.next');

// 递归删除目录中的内容
function removeDir(dirPath) {
  if (fs.existsSync(dirPath)) {
    fs.readdirSync(dirPath).forEach((file) => {
      const curPath = path.join(dirPath, file);
      if (fs.lstatSync(curPath).isDirectory()) {
        // 递归删除子目录
        removeDir(curPath);
      } else {
        // 删除文件
        fs.unlinkSync(curPath);
      }
    });
    
    // 如果是.next目录本身，不删除目录，只清空内容
    if (dirPath !== nextDir) {
      fs.rmdirSync(dirPath);
    }
  }
}

// 执行清理
try {
  console.log('清理 .next 目录...');
  if (fs.existsSync(nextDir)) {
    removeDir(nextDir);
    console.log('.next 目录已清空');
  } else {
    fs.mkdirSync(nextDir);
    console.log('.next 目录不存在，已创建空目录');
  }
} catch (error) {
  console.error('清理 .next 目录时出错:', error);
  process.exit(1);
} 